/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package co.edu.senaclem.atus.vista;

import co.edu.senaclem.logica.TurnoLogicaLocal;
import co.edu.senaclem.logica.UsuariosLogicaLocal;
import co.edu.senaclem.modelo.Turno;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import org.primefaces.component.commandbutton.CommandButton;

/**
 *
 * @author anfeles
 */
@ManagedBean(name="consultasTurnosVista")
@RequestScoped
public class ConsultasTurnosVista {

    @EJB
    private TurnoLogicaLocal turnoLogica;
    
    @EJB
    private UsuariosLogicaLocal usuariosLogica;
    
    public Date fechaSistema;
    private CommandButton btnRefrescar;
    private List<Turno> listaTurnos;
    private Turno selectedTurno;

    public String getFechaSistema() {        
        fechaSistema = new Date();   
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
        //System.out.println("La fecha de hoy es:" + sdf.format(fechaSistema));         
        return sdf.format(fechaSistema); 
    }

    public void setFechaSistema(Date fechaSistema) {
        this.fechaSistema = fechaSistema;
    }

    public CommandButton getBtnRefrescar() {
        return btnRefrescar;
    }

    public void setBtnRefrescar(CommandButton btnLimpiar) {
        this.btnRefrescar = btnLimpiar;
    }

    public List<Turno> getListaTurnos() {
        if (listaTurnos == null) {
            try {
                //System.out.println("Va a consultar los turnos");
                setListaTurnos(turnoLogica.consultar());
            } catch (Exception ex) {
                Logger.getLogger(ConsultasTurnosVista.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
              
        return listaTurnos;
    }

    public void setListaTurnos(List<Turno> listaTurnos) {
        this.listaTurnos = listaTurnos;
    }

    public Turno getSelectedTurno() {
        return selectedTurno;
    }

    public void setSelectedTurno(Turno selectedTurno) {
        this.selectedTurno = selectedTurno;
    }
    
    public void refrescar_action() {
        //System.out.println("Limpiar");
        if (usuariosLogica.validarSesion()) {          
            setListaTurnos(null);
        } else {
            try {
                FacesContext.getCurrentInstance().getExternalContext().redirect("../SesionInvalida.xhtml");
            } catch (IOException ex) {
                Logger.getLogger(ConsultasTurnosVista.class.getName()).log(Level.SEVERE, null, ex);
            }
        }

    }
    
   
    
    
}
